home *** CD-ROM | disk | FTP | other *** search
/ Network CD 1 / Network CD.iso / converters / easyjpeg / easypeg030 < prev    next >
Encoding:
Text File  |  1994-03-04  |  6.5 KB  |  294 lines

  1. ;AmigaDos script to control JPEG modules;
  2.  
  3. ;This command displays Authors details and checks to see if user wants to proceed;
  4.  
  5. requestchoice >env:num "Easypeg030" "Easypeg030 1.01 © Neil Prater,*nConversion of 24bit/GIF to Jpeg,*nContinue?" "Yes|No"
  6. if $num eq 1
  7.  
  8. ;Rename the Ram Disk to prevent any "space" errors caused by the space in the name "Ram Disk";
  9.  
  10. relabel Ram: "Ram_Disk" >nil:
  11.  
  12. echo ""
  13. delete env:num >nil:
  14. echo "OK continuing"
  15. else
  16. delete env:num >nil:
  17. skip abort
  18. endif
  19. lab start
  20. echo ""
  21. echo "Pick the file to be compressed"
  22. cd >env:first
  23.  
  24. ;get the file requested by user;
  25.  
  26. requestfile title JPEG_Compress drawer $first pattern #? noicons >env:source
  27.  
  28. ;if user selects "cancel" abort program;
  29.  
  30. if warn
  31. delete env:name >nil:
  32. delete env:first >nil:
  33. delete env:source >nil:
  34. skip abort
  35. endif
  36.  
  37. ;fetch the user's choice from RAM and format it to a form the modules can use;
  38.  
  39. echo $source first 1 >env:name
  40. run >nil: type hex $source >env:24
  41. status command type >env:stop
  42. break $stop >nil:
  43. delete env:stop >nil:
  44. search env:24 bmhd >nil:
  45. if warn
  46. skip gif
  47. else
  48. skip 24
  49. endif
  50. lab gif
  51. search env:24 gif >nil:
  52. if warn 
  53. skip input
  54. else
  55. delete env:24 >nil:
  56. echo gif >env:gif
  57. skip cgif
  58. endif
  59. lab input
  60. requestchoice >nil: "Easypeg030" "Input File Was Not IFF/GIF Format" "Resume"
  61. delete env:24 >nil:
  62. skip start back
  63. endif
  64. lab 24
  65. search env:24 pattern "00000000 18000" >nil:
  66. if warn
  67. requestchoice >nil: "Easypeg030" "ILBM File Not In 24bit Format" "Resume"
  68. delete env:24 >nil:
  69. skip start back
  70. endif
  71. delete env:24 >nil:
  72. lab cgif
  73. list $source quick nohead >env:name1
  74. delete env:first >nil:
  75. lab again
  76. if exists env:source1
  77. cd $source1// >nil:
  78. delete env:source1 >nil:
  79. cd >env:path
  80. lab start1
  81. echo ""
  82. echo "Pick the file to be compressed"
  83. requestfile title JPEG_Compress drawer $path file $name1 pattern #? noicons >env:source
  84. if warn
  85. delete env:source >nil:
  86. delete env:path >nil:
  87. skip abort1
  88. endif
  89. echo $source first 1 >env:banana
  90. run >nil: type hex $banana >env:24
  91. status command type >env:stop
  92. break $stop >nil:
  93. delete env:stop >nil:
  94. search env:24 bmhd >nil:
  95. if warn
  96. skip gif
  97. else
  98. skip 24
  99. endif
  100. lab gif
  101. search env:24 gif >nil:
  102. if warn
  103. delete env:24 >nil:
  104. skip input
  105. else
  106. echo gif >env:gif
  107. delete env:24 >nil:
  108. skip cgif
  109. endif
  110. lab input
  111. requestchoice >nil: "Easypeg030" "Input File Was Not IFF/GIF Format" "Resume"
  112. skip start1 back
  113. lab 24
  114. search env:24 pattern "00000000 18000" >nil:
  115. if warn
  116. delete env:24 >nil:
  117. requestchoice >nil: "Easypeg030" "ILBM File Not In 24bit Format" "Resume"
  118. skip start1 back
  119. endif
  120. delete env:24 >nil:
  121. lab cgif
  122. list $banana quick nohead >env:name1
  123. delete env:path >nil:
  124. endif
  125. echo ""
  126. echo "Stand by"
  127.  
  128. ;convert 24bit data to PPM format;
  129.  
  130. 24toppm $source ram:T/picppm >nil:
  131. echo ""
  132. echo "Select destination for the file"
  133. echo ""
  134. echo "It will automatically be appended to .jpeg"
  135. if exists env:dest3
  136. cd $dest3//
  137. delete env:dest3 >nil:
  138. cd >env:save
  139.  
  140. ;request destination directory for the JPEG file;
  141.  
  142. requestfile title Destination drawer $save file $name1 pattern #? noicons >env:dest
  143. if warn
  144. delete env:save >nil:
  145. delete ram:T/picppm >nil:
  146. delete env:gif >nil:
  147. skip abort1
  148. endif
  149. delete env:save >nil:
  150. skip next
  151. endif
  152. cd >env:second
  153. requestfile title Destination drawer $second file $name1 pattern #? noicons >env:dest
  154. if warn
  155. delete env:second >nil:
  156. delete ram:T/picppm >nil:
  157. delete env:gif >nil:
  158. skip abort1
  159. endif
  160. delete env:second >nil:
  161. lab next
  162. echo ""
  163.  
  164. ;give the user an option to change image quality;
  165.  
  166. requestchoice >env:num "Easypeg030" "Change quality?" "Yes|No"
  167. if $num eq 1
  168. delete env:num >nil:
  169. requestchoice >env:q "Easypeg030" "Select quality,*nlow,medium,high" "low|med|high"
  170. else
  171. delete env:num >nil:
  172. endif
  173. ;give the user the option to change to grey;
  174.  
  175. requestchoice >env:g "Easypeg030" "Convert to Grayscale?" "Yes|No"
  176. if $g eq 1
  177. echo >>env:gray "-gr"
  178. else
  179. echo >>env:gray ""
  180. endif
  181. delete env:g >nil:
  182. if exists env:q
  183. skip qual
  184. endif
  185. echo "Compressing please wait"
  186. echo $dest first 1 >env:dest1
  187. delete env:dest >nil:
  188. echo $dest1.jpeg >env:dest2
  189. delete env:dest1 >nil:
  190. if exists env:q
  191. endif
  192. if exists env:gif
  193. skip cgif1
  194. endif
  195. cjpeg030 $gray -q 85 ram:T/picppm $dest2  ;this is where you can change number value;
  196. skip message
  197. lab cgif1
  198. cjpeg030 $gray -q 85 $source $dest2
  199. delete env:gif >nil:
  200. skip message
  201. endif
  202. lab qual
  203. echo $dest first 1 >env:dest1
  204. delete env:dest >nil:
  205. echo $dest1.jpeg >env:dest2
  206. delete env:dest1 >nil:
  207. if exists env:gif
  208. skip cgif2
  209. endif
  210. if $q eq 1
  211. echo "Compressing please wait"
  212. cjpeg030 $gray -q 70 ram:T/picppm $dest2  ;low quality
  213. endif
  214. if $q eq 0
  215. echo "Compressing please wait"
  216. cjpeg030 $gray -q 95 ram:T/picppm $dest2  ;high quality
  217. endif
  218. if $q eq 2
  219. echo "Compressing please wait"
  220. cjpeg030 $gray -q 85 ram:T/picppm $dest2  ;med quality (default)
  221. endif
  222. skip message
  223. lab cgif2
  224. if $q eq 1
  225. echo "Compressing please wait"
  226. cjpeg030 $gray -q 70 $source $dest2
  227. endif
  228. if $q eq 0
  229. echo "Compressing please wait"
  230. cjpeg030 $gray -q 95 $source $dest2
  231. endif
  232. if $q eq 2
  233. echo "Compressing please wait"
  234. cjpeg030 $gray -q 85 $source $dest2
  235. endif
  236. delete env:gif >nil:
  237. lab message
  238. echo ""
  239. echo OK all done, the file $source
  240. echo ""
  241. echo has been compressed and saved as $dest2
  242. delete env:gray >nil:
  243. echo ""
  244.  
  245. ;ask if user wants to delete 24bit file;
  246.  
  247. requestchoice >env:num "Easypeg030" "Delete original file?" "Yes|No"
  248. if $num eq 1
  249. echo Deleting $source
  250. delete $source >nil:
  251. echo ""
  252. echo $source Deleted
  253. else
  254. delete env:num >nil:
  255. endif
  256. delete ram:T/picppm >nil:
  257. delete env:q >nil:
  258. echo ""
  259.  
  260. ;give user the option to carry out more conversions;
  261.  
  262. requestchoice >env:num "Easypeg030" "Convert more files?" "Yes|No"
  263. if $num eq 1
  264. delete env:num >nil:
  265. echo $source first 1 >env:source1
  266. delete env:source >nil:
  267. echo $dest2 >env:dest3
  268. delete env:dest2 >nil:
  269. skip again back
  270. else
  271. delete env:num >nil:
  272. endif
  273.  
  274. ;clear out RAM and end program;
  275.  
  276. lab abort1
  277. relabel ram: "Ram Disk" >nil:
  278. delete env:dest#? >nil:
  279. delete env:source#? >nil:
  280. delete env:path >nil:
  281. delete env:save >nil:
  282. delete env:banana >nil:
  283. delete env:name#? >nil:
  284. endcli
  285. lab abort
  286. echo ""
  287. echo aborting
  288. relabel ram: "Ram Disk" >nil:
  289. delete name#? >nil:
  290. endcli
  291.  
  292. ;if you look carefully at the script you will see the use of CD at various parts in the script, this is the "clever" part of the script as it makes the script "remember" where the user requested files from and the file's name this makes multiple conversion of files less hassle as the file requester will always open in the last directory a file was requested from with the last file converted selected in the file box;
  293.  
  294. ;Feel free to hack this code to pieces, but don't redistribute it altered unless you have mentioned all the authors involved and of course yourself as the hacker, good luck Neil Prater;